package a.f.d;

import a.c.ab;
import a.c.bb;
import a.c.d;
import a.c.e;
import a.c.k;
import a.c.m;
import a.c.n;
import a.c.z;
import a.f.*;
import a.i.db;
import a.i.l;
import a.i.nb;

import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

class t
{
  private Map a = new HashMap();
  private ab b;
  private bb c;
  private a.f.o e;
  private a.c.x f;
  private a.c.x g;
  private a.c.x h;
  private a.c.x i;
  private a.c.x j;
  private Map k;
  private b_ l;
  private z m;
  double n = 20.0D;
  private a.c.x o;
  private n p;
  private k q;
  private k r;
  static final String s = "LowerSameLayerEdgeSupport";
  static final String t = "UpperSameLayerEdgeSupport";
  private double u;
  private n v;
  private n w;
  private boolean x = false;
  
  t(a.f.o paramo, a.c.x paramx1, a.c.x paramx2, z paramz, a.c.x paramx3, n paramn1, n paramn2, n paramn3)
  {
    this.j = paramx1;
    this.e = paramo;
    this.m = paramz;
    this.f = paramx2;
    this.g = paramx3;
    this.v = paramn2;
    this.w = paramn3;
  }
  
  public void a(boolean paramBoolean)
  {
    this.x = paramBoolean;
  }
  
  public void a(a.c.x paramx, k paramk1, n paramn, k paramk2)
  {
    this.o = paramx;
    this.p = paramn;
    this.q = paramk1;
    this.r = paramk2;
  }
  
  public void a(double paramDouble)
  {
    this.n = paramDouble;
  }
  
  public boolean a()
  {
    int i1 = f.o;
    if ((i1 != 0) || (this.b != null)) {
      if (i1 != 0) {}
    }
    return this.b.size() > 0;
  }
  
  public void b()
  {
    int i2 = f.o;
    int i1 = f.n;
    this.b = new ab();
    m localm = this.e.w();
    do
    {
      if (!localm.e()) {
        break;
      }
      d locald = localm.a();
      if (i2 == 0)
      {
        if (this.f.getInt(locald.e()) == this.f.getInt(locald.f()))
        {
          this.b.c(locald);
          this.e.f(locald);
        }
        localm.f();
      }
    } while (i1 == 0);
  }
  
  public void c()
  {
    int i2 = f.o;
    int i1 = f.n;
    if (i2 == 0) {
      if (!a()) {
        return;
      }
    }
    do
    {
      for (a.c.v localv = this.b.f(); i1 == 0; localv = localv.a())
      {
        if (localv == null) {
          break;
        }
        this.e.g((d)localv.c());
        this.e.e(localv.c()).b();
      }
    } while (i2 != 0);
  }
  
  public ab d()
  {
    return this.b;
  }
  
  public int a(int paramInt)
  {
    int i8 = f.o;
    int i7 = f.n;
    if (i8 == 0)
    {
      if (!a()) {
        return paramInt;
      }
      this.c = new bb();
    }
    int i1 = 0;
    int i2 = paramInt - 1;
    a.c.v localv = this.b.f();
    do
    {
      if (localv == null) {
        break;
      }
      d locald1 = (d)localv.c();
      cd localcd1 = a(locald1);
      cd localcd2 = b(locald1);
      e locale1 = locald1.e();
      e locale2 = locald1.f();
      boolean bool = a(localcd1, localcd2);
      e locale3 = this.e.i();
      if (i8 != 0) {
        break label566;
      }
      if (i7 != 0) {
        break label565;
      }
      if (i8 == 0)
      {
        if (this.o != null) {
          this.o.a(locale3, nb.a("LowerSameLayerEdgeSupport", this.r.get(locald1)));
        }
        this.j.a(locale3, c.hb);
        this.e.b(locale3, 1.0D, 1.0D);
      }
      int i6 = this.f.getInt(locale1);
      this.f.a(locale3, i6 + 1);
      d locald2 = this.e.a(locale1, locale3);
      d locald3 = this.e.a(locale2, locale3);
      this.c.add(locale3);
      e locale4 = this.e.i();
      this.j.a(locale4, c.hb);
      if (i8 == 0)
      {
        if (this.o != null) {
          this.o.a(locale4, nb.a("UpperSameLayerEdgeSupport", this.r.get(locald1)));
        }
        this.e.b(locale4, 1.0D, 1.0D);
      }
      this.f.a(locale4, i6 - 1);
      this.e.a(locale4, locale1);
      this.e.a(locale4, locale2);
      this.c.add(locale4);
      i1 = Math.min(i1, i6 - 1);
      i2 = Math.max(i2, i6 + 1);
      localv = localv.a();
    } while (i7 == 0);
    if (i8 == 0)
    {
      if (i8 == 0) {
        if (i1 < 0)
        {
          int i3 = -1;
          if (i3 >= i1) {}
          while (i8 != 0)
          {
            this.m.a(nb.a("UpperSameLayerEdgeLayer", new Integer(-i3)));
            i3--;
            if (i8 != 0) {
              break label575;
            }
            if (i7 != 0) {
              break label568;
            }
            if (i7 == 0) {
              break;
            }
          }
          a.c.w localw = this.e.v();
          do
          {
            do
            {
              if (!localw.e()) {
                break;
              }
              int i5 = this.f.getInt(localw.d()) - i1;
              this.f.a(localw.d(), i5);
              localw.f();
              if (i8 != 0) {
                break label566;
              }
              if (i7 != 0) {
                break label565;
              }
            } while (i7 == 0);
          } while (i8 != 0);
          i2 -= i1;
        }
      }
      paramInt = i2 + 1;
    }
    label565:
    label566:
    int i4 = 1;
    label568:
    label575:
    do
    {
      do
      {
        if (this.m.size() >= paramInt) {
          break;
        }
        this.m.b(nb.a("LowerSameLayerEdgeLayer", new Integer(i4++)));
      } while (i7 == 0);
    } while (i8 != 0);
    return paramInt;
  }
  
  private boolean a(cd paramcd1, cd paramcd2)
  {
    int i1 = f.o;
    if (i1 == 0) {
      if (!paramcd1.d())
      {
        if ((i1 == 0) && ((!paramcd1.e()) && ((i1 == 0) && ((!paramcd1.f()) && ((i1 == 0) && (!paramcd1.g())))))) {
          break label63;
        }
        if (i1 != 0) {
          break label60;
        }
      }
    }
    label60:
    label63:
    return paramcd2.d();
  }
  
  cd a(d paramd)
  {
    int i1 = f.o;
    if (i1 == 0) {
      if (this.v != null)
      {
        localObject = (cd)this.v.get(paramd);
        if (i1 == 0) {}
        return localObject == null ? cd.a((byte)0, false) : localObject;
      }
    }
    Object localObject = this.e.c(ed.a);
    if (i1 == 0) {
      if (localObject == null) {
        return cd.a((byte)0, false);
      }
    }
    cd localcd = (cd)((k)localObject).get(paramd);
    if (i1 == 0) {}
    return localcd == null ? cd.a((byte)0, false) : localcd;
  }
  
  cd b(d paramd)
  {
    int i1 = f.o;
    if (i1 == 0) {
      if (this.w != null)
      {
        localObject = (cd)this.w.get(paramd);
        if (i1 == 0) {}
        return localObject == null ? cd.a((byte)0, false) : localObject;
      }
    }
    Object localObject = this.e.c(ed.b);
    if (i1 == 0) {
      if (localObject == null) {
        return cd.a((byte)0, false);
      }
    }
    cd localcd = (cd)((k)localObject).get(paramd);
    if (i1 == 0) {}
    return localcd == null ? cd.a((byte)0, false) : localcd;
  }
  
  public void a(z paramz)
  {
    int i3 = f.o;
    int i2 = f.n;
    if (i3 == 0) {
      if (!a()) {
        return;
      }
    }
    if (((i3 != 0) || (this.c != null)) && ((i3 != 0) || (!this.c.isEmpty())))
    {
      a.c.v localv1 = this.c.f();
      do
      {
        do
        {
          if (localv1 == null) {
            break;
          }
          this.e.a((e)localv1.c());
          if (i3 != 0) {
            break label107;
          }
          localv1 = localv1.a();
          if (i2 != 0) {
            break label106;
          }
        } while (i2 == 0);
      } while (i3 != 0);
      localv1 = paramz.f();
      label106:
      label107:
      if (localv1 != null) {}
      Object localObject1;
      Object localObject2;
      while (i3 != 0)
      {
        localObject1 = (bb)localv1.c();
        if (i3 != 0) {
          break label208;
        }
        if (i2 != 0) {
          break label205;
        }
        localObject2 = ((bb)localObject1).f();
        if (localObject2 != null) {}
        do
        {
          if (i2 != 0) {
            break label211;
          }
          if (!this.e.h((e)((a.c.v)localObject2).c())) {
            ((bb)localObject1).h((a.c.v)localObject2);
          }
          localObject2 = ((a.c.v)localObject2).a();
          if (i2 == 0) {
            break;
          }
          localv1 = localv1.a();
        } while (i3 != 0);
        if (i2 == 0) {
          break;
        }
      }
      label205:
      label208:
      if (((z)paramz.d()).isEmpty())
      {
        label211:
        paramz.h(paramz.g());
        this.m.h(this.m.g());
      }
      if (i3 == 0)
      {
        if (((z)paramz.a()).isEmpty())
        {
          paramz.h(paramz.f());
          this.m.h(this.m.f());
        }
      }
      else
      {
        int i1 = 0;
        localObject1 = paramz.f();
        do
        {
          if (localObject1 == null) {
            break;
          }
          localObject2 = (bb)((a.c.v)localObject1).c();
          Integer localInteger = new Integer(i1);
          a.c.v localv2 = ((bb)localObject2).f();
          if (localv2 != null)
          {
            this.f.a(localv2.c(), localInteger);
            localv2 = localv2.a();
          }
          for (;;)
          {
            if (i3 == 0) {
              if (i2 == 0)
              {
                if (i2 == 0) {
                  break;
                }
                localObject1 = ((a.c.v)localObject1).a();
                if (i3 != 0) {
                  continue;
                }
                i1++;
              }
            }
          }
        } while (i2 == 0);
      }
    }
  }
  
  void b(z paramz)
  {
    int i10 = f.o;
    int i9 = f.n;
    if (i10 == 0)
    {
      if (!a()) {
        return;
      }
      this.i = this.e.B();
    }
    a.c.x localx1 = db.a(new e[this.e.j()]);
    a.c.x localx2 = db.a(new int[this.e.j()]);
    a.c.v localv = paramz.f();
    if (localv != null) {}
    int i2;
    Object localObject3;
    label152:
    label154:
    while (i10 != 0)
    {
      localObject1 = (bb)localv.c();
      i2 = 0;
      if (i9 != 0) {
        break label166;
      }
      localObject3 = ((bb)localObject1).f();
      do
      {
        do
        {
          if (localObject3 == null) {
            break;
          }
          localx2.a(((a.c.v)localObject3).c(), i2);
          localObject3 = ((a.c.v)localObject3).a();
          i2++;
          if (i10 != 0) {
            break label154;
          }
          if (i9 != 0) {
            break label152;
          }
        } while (i9 == 0);
      } while (i10 != 0);
      localv = localv.a();
      if (i9 == 0) {
        break;
      }
    }
    label166:
    localv = paramz.f();
    Object localObject5;
    do
    {
      do
      {
        if (localv == null) {
          break;
        }
        localObject1 = (bb)localv.c();
        i2 = 0;
        localObject3 = ((bb)localObject1).l();
        if (i9 != 0) {
          break label1955;
        }
        if (((a.c.w)localObject3).e())
        {
          Object localObject4 = ((a.c.w)localObject3).d();
          do
          {
            do
            {
              if (!((a.c.w)localObject3).e()) {
                break;
              }
              localObject4 = ((a.c.w)localObject3).d();
              if (i9 != 0) {
                break label408;
              }
              if (this.g.get(localObject4) == null) {
                break;
              }
              ((a.c.w)localObject3).f();
            } while (i9 == 0);
            if (i10 != 0) {
              break;
            }
          } while (i10 != 0);
          if (((a.c.w)localObject3).e())
          {
            ((a.c.w)localObject3).f();
            do
            {
              if (!((a.c.w)localObject3).e()) {
                break;
              }
              localObject5 = ((a.c.w)localObject3).d();
              if (i9 != 0) {
                break label408;
              }
              if (this.g.get(localObject5) == null)
              {
                localx1.a(localObject5, localObject4);
                localObject4 = localObject5;
              }
              ((a.c.w)localObject3).f();
            } while (i9 == 0);
          }
        }
        localv = localv.a();
        if (i10 != 0) {
          break label1955;
        }
      } while (i9 == 0);
    } while (i10 != 0);
    localv = this.b.f();
    if (localv != null) {}
    label408:
    Object localObject2;
    c_ localc_1;
    label739:
    label1015:
    int i5;
    label821:
    label827:
    label831:
    label1115:
    label1130:
    label1402:
    label1407:
    do
    {
      localObject1 = (d)localv.c();
      localObject2 = a((d)localObject1);
      localObject3 = b((d)localObject1);
      boolean bool1 = a((cd)localObject2, (cd)localObject3);
      localObject5 = (c_)this.i.get(((d)localObject1).e());
      if (i9 != 0) {
        break label1954;
      }
      if (i10 == 0) {
        if (localObject5 == null)
        {
          localObject5 = new c_(this.e.d(((d)localObject1).e()));
          this.i.a(((d)localObject1).e(), localObject5);
        }
      }
      localc_1 = (c_)this.i.get(((d)localObject1).f());
      if (i10 == 0) {
        if (localc_1 == null)
        {
          localc_1 = new c_(this.e.d(((d)localObject1).f()));
          this.i.a(((d)localObject1).f(), localc_1);
        }
      }
      int i3 = (i10 != 0) || ((localx1.get(((d)localObject1).e()) == ((d)localObject1).f()) || (localx1.get(((d)localObject1).f()) == ((d)localObject1).e())) ? 1 : 0;
      if (i10 == 0) {}
      boolean bool2 = localx2.getInt(((d)localObject1).e()) < localx2.getInt(((d)localObject1).f());
      if (i10 == 0) {
        if (bool2)
        {
          if (((i10 != 0) || (i3 != 0)) && ((i10 != 0) || ((((cd)localObject2).b() == 0) || ((i10 != 0) || (((cd)localObject2).b() == 4))))) {
            if (i10 == 0) {
              if (((cd)localObject3).b() != 0) {
                if (i10 != 0) {
                  break label739;
                }
              }
            }
          }
          i4 = ((cd)localObject3).b() == 8 ? 1 : 0;
          if (i10 != 0) {
            break label831;
          }
          if (i9 == 0) {
            break label827;
          }
        }
      }
      if (((i10 != 0) || (i3 != 0)) && ((i10 != 0) || ((((cd)localObject2).b() == 0) || ((i10 != 0) || (((cd)localObject2).b() == 8))))) {
        if (i10 == 0) {
          if (((cd)localObject3).b() != 0) {
            if (i10 != 0) {
              break label821;
            }
          }
        }
      }
      int i4 = ((cd)localObject3).b() == 4 ? 1 : 0;
      if (i10 == 0) {
        if (this.x)
        {
          if (i10 != 0) {
            break label899;
          }
          if ((i3 == 0) && ((i10 != 0) || ((this.v != null) && (this.w != null))))
          {
            if (i10 != 0) {
              break label953;
            }
            if (((cd)localObject2).b() == 0) {
              break label952;
            }
            if (i10 != 0) {
              break label953;
            }
            if (((cd)localObject3).b() == 0) {
              break label952;
            }
          }
        }
      }
      if (i10 == 0)
      {
        if (((cd)localObject2).b() != 4)
        {
          if (i10 != 0) {
            break label1585;
          }
          if (((cd)localObject2).b() != 8) {
            break label1578;
          }
        }
        if (i10 != 0) {}
      }
      else if (((cd)localObject3).b() != 4)
      {
        if (i10 != 0) {
          break label1585;
        }
        if (((cd)localObject3).b() != 8) {
          break label1578;
        }
      }
      int i7 = 0;
      int i8 = 0;
      e locale3;
      if (i10 == 0) {
        if (bool2)
        {
          if (i10 == 0) {
            if (((cd)localObject3).b() == 4)
            {
              locale3 = ((d)localObject1).f();
              if (i10 != 0) {
                break label1025;
              }
              if (i9 == 0) {
                break label1015;
              }
            }
          }
          locale3 = (e)localx1.get(((d)localObject1).f());
          if (i10 == 0)
          {
            if (((cd)localObject2).b() != 8) {}
          }
          else
          {
            locale4 = (e)localx1.get(((d)localObject1).e());
            if (i10 != 0) {
              break label1065;
            }
            if (i9 == 0) {
              break label1168;
            }
          }
          locale4 = ((d)localObject1).e();
          if (i10 == 0) {
            if (i9 == 0) {
              break label1168;
            }
          }
        }
        else
        {
          if (i10 != 0) {
            break label1115;
          }
        }
      }
      if (((cd)localObject2).b() == 4)
      {
        locale3 = ((d)localObject1).e();
        if (i10 != 0) {
          break label1130;
        }
        if (i9 == 0) {}
      }
      else
      {
        locale3 = (e)localx1.get(((d)localObject1).e());
      }
      if (i10 == 0)
      {
        if (((cd)localObject3).b() != 8) {}
      }
      else
      {
        if (i10 != 0) {
          break label1166;
        }
        locale4 = (e)localx1.get(((d)localObject1).f());
        if (i9 == 0) {
          break label1168;
        }
      }
      e locale4 = ((d)localObject1).f();
      if (locale3 != locale4) {
        i7 += locale3.d();
      }
      do
      {
        i8 += locale3.e();
        locale3 = (e)localx1.get(locale3);
        if ((i10 == 0) && (i9 != 0)) {
          break label1244;
        }
        if (i9 == 0) {
          break;
        }
        if (i10 != 0) {
          break label1241;
        }
      } while (i10 != 0);
      bool1 = i8 < i7;
      if (i10 == 0) {
        if (((cd)localObject2).b() == 0)
        {
          if (i10 == 0) {
            if (i8 == i7)
            {
              if (i10 == 0) {}
              bool1 = ((cd)localObject3).b() == 2;
            }
          }
          if (i10 == 0) {}
          i5 = bool1 ? 2 : 0;
          if (i10 == 0) {}
          this.v.a(localObject1, cd.a((byte)(bool1 ? 2 : 1)));
          if (i10 != 0) {
            break label1407;
          }
          if (i9 == 0) {
            break label1402;
          }
        }
      }
      if (i10 == 0) {
        if (i10 != 0) {}
      }
      if (i10 == 0) {}
      i5 = x.a(((cd)localObject2).b(), bool1 ? 2 : i4 != 0 ? 3 : bool2 ? 1 : 0);
      if (i10 == 0) {
        if (((cd)localObject3).b() == 0)
        {
          if (i10 == 0)
          {
            if (((cd)localObject2).b() == 1)
            {
              bool1 = false;
              if (i10 != 0) {
                break label1461;
              }
              if (i9 == 0) {}
            }
            else
            {
              if (i10 != 0) {
                break label1461;
              }
            }
          }
          else if (((cd)localObject2).b() == 2) {
            bool1 = true;
          }
          if (i10 == 0) {}
          i6 = bool1 ? 2 : 0;
          if (i10 == 0) {}
          this.w.a(localObject1, cd.a((byte)(bool1 ? 2 : 1)));
          if (i10 != 0) {
            break label1689;
          }
          if (i9 == 0) {
            break label1684;
          }
        }
      }
      if (i10 == 0) {
        if (i10 != 0) {}
      }
      if (i10 == 0) {}
      int i6 = x.a(((cd)localObject3).b(), bool1 ? 2 : i4 != 0 ? 1 : bool2 ? 3 : 0);
      if (i10 == 0) {
        if (i9 != 0)
        {
          if (i10 == 0) {
            if (i10 != 0) {}
          }
          if (i10 == 0) {}
          i5 = x.a(((cd)localObject2).b(), bool1 ? 2 : i4 != 0 ? 3 : bool2 ? 1 : 0);
          if (i10 == 0) {
            if (i10 != 0) {}
          }
          if (i10 == 0) {}
          i6 = x.a(((cd)localObject3).b(), bool1 ? 2 : i4 != 0 ? 1 : bool2 ? 3 : 0);
        }
      }
      if (i10 == 0)
      {
        if ((i5 ^ i6) != 2) {
          break label1716;
        }
        if (i10 != 0) {
          break label1713;
        }
      }
      i7 = (i5 | i6) == 2 ? 1 : 0;
      if ((i10 != 0) || (i7 != 0))
      {
        if (bool2)
        {
          localc_1.c[1] += 1;
          if (i10 == 0) {}
          localc_1.g[(i6 == 0 ? 0 : 3)] += 1;
          if (i10 == 0) {
            if (i9 == 0) {
              break label1816;
            }
          }
        }
        else
        {
          localc_1.c[0] += 1;
        }
        if (i10 == 0) {}
        localc_1.g[(i6 == 0 ? 1 : 2)] += 1;
      }
      if ((i10 != 0) || (i4 != 0)) {
        if (i10 != 0) {}
      }
      if (i10 == 0) {}
      a((c_)localObject5, (d)localObject1, i5, (i5 & 0x1) == 1, bool1, !bool2);
      if ((i10 != 0) || (i4 != 0)) {
        if (i10 != 0) {}
      }
      a(localc_1, (d)localObject1, i6, (i6 & 0x1) == 1, bool1, bool2);
      localv = localv.a();
      if (i9 == 0) {
        break;
      }
      this.l = new b_(localx2);
    } while (i10 != 0);
    label899:
    label952:
    label953:
    label1241:
    label1244:
    this.h = this.e.B();
    label1025:
    label1065:
    label1461:
    int i1 = 0;
    label1166:
    label1168:
    label1578:
    label1585:
    label1716:
    Object localObject1 = paramz.f();
    label1684:
    label1689:
    label1713:
    do
    {
      if (localObject1 == null) {
        break;
      }
      localObject2 = (bb)((a.c.v)localObject1).c();
      do
      {
        localObject3 = ((bb)localObject2).f().a();
        do
        {
          if (localObject3 == null) {
            break label2176;
          }
          e locale1 = (e)((a.c.v)localObject3).c();
          localObject5 = (e)((a.c.v)localObject3).b().c();
          localc_1 = d(locale1);
          c_ localc_2 = d((e)localObject5);
          if (i9 != 0) {
            break;
          }
          if (localc_1 != null)
          {
            ab localab = localc_1.c(3).l;
            if (i10 != 0) {
              continue;
            }
            if (localab.size() > 0)
            {
              e locale2 = this.e.i();
              localc_1.h[1] = locale2;
              i5 = localab.size();
              this.f.a(locale2, i1);
              ((bb)localObject2).a(locale2, (a.c.v)localObject3);
              this.e.b(locale2, 2.0D * this.n + this.n * (i5 - 1) + a(localab), 0.5D);
              this.h.a(locale2, true);
            }
          }
          localObject3 = ((a.c.v)localObject3).a();
        } while (i9 == 0);
        localObject1 = ((a.c.v)localObject1).a();
        i1++;
      } while (i10 != 0);
    } while (i9 == 0);
    label1816:
    label1954:
    label1955:
    return;
  }
  
  void a(e parame, c_ paramc_)
  {
    this.l.a(parame, 0);
    paramc_.a(0).l.a(this.l);
    this.l.a(parame, 2);
    paramc_.b(0).l.a(this.l);
    this.l.a(parame, 3);
    paramc_.a(1).l.a(this.l);
    this.l.a(parame, 5);
    paramc_.b(1).l.a(this.l);
    this.l.a(parame, 6);
    paramc_.a(2).l.a(this.l);
    this.l.a(parame, 8);
    paramc_.b(2).l.a(this.l);
    this.l.a(parame, 9);
    paramc_.a(3).l.a(this.l);
    this.l.a(parame, 11);
    paramc_.b(3).l.a(this.l);
    paramc_.c(3).l.j();
  }
  
  private void a(c_ paramc_, d paramd, int paramInt, boolean paramBoolean1, boolean paramBoolean2, boolean paramBoolean3)
  {
    int i2 = f.o;
    int i1 = f.n;
    if (i2 == 0) {
      if (paramBoolean1)
      {
        paramc_.c(paramInt).l.add(paramd);
        if ((i2 == 0) && (i1 == 0)) {
          return;
        }
      }
    }
    if (i2 == 0) {}
    switch (paramInt)
    {
    case 0: 
      if (i2 == 0) {
        if (paramBoolean3)
        {
          paramc_.a(0).l.add(paramd);
          if (i2 == 0) {
            if (i1 == 0) {
              break;
            }
          }
        }
        else
        {
          paramc_.b(0).l.add(paramd);
        }
      }
      if ((i2 == 0) && (i1 == 0)) {
        break;
      }
    case 1: 
      if (i2 == 0) {
        if (paramBoolean2)
        {
          paramc_.b(1).l.add(paramd);
          if (i2 == 0) {
            if (i1 == 0) {
              break;
            }
          }
        }
        else
        {
          paramc_.a(1).l.add(paramd);
        }
      }
      if ((i2 == 0) && (i1 == 0)) {
        break;
      }
    case 2: 
      if (i2 == 0) {
        if (paramBoolean3)
        {
          paramc_.b(2).l.add(paramd);
          if (i2 == 0) {
            if (i1 == 0) {
              break;
            }
          }
        }
        else
        {
          paramc_.a(2).l.add(paramd);
        }
      }
      if ((i2 == 0) && (i1 == 0)) {
        break;
      }
    case 3: 
      if (i2 == 0) {
        if (paramBoolean2)
        {
          paramc_.a(3).l.add(paramd);
          if ((i2 == 0) && (i1 == 0)) {
            break;
          }
        }
      }
      paramc_.b(3).l.add(paramd);
    }
  }
  
  private double a(ab paramab)
  {
    int i2 = f.o;
    int i1 = f.n;
    double d = 0.0D;
    m localm = paramab.l();
    do
    {
      while (i1 == 0)
      {
        if (!localm.e()) {
          break;
        }
        if (i1 != 0) {
          break label67;
        }
        d = Math.max(d, d(localm.a()));
        localm.f();
      }
    } while (i2 != 0);
    label67:
    return d;
  }
  
  private double d(d paramd)
  {
    int i3 = f.o;
    int i2 = f.n;
    kc[] arrayOfkc = e(paramd);
    if (((i3 == 0) && (arrayOfkc == null)) || (arrayOfkc.length == 0)) {
      return 0.0D;
    }
    double d = 0.0D;
    int i1 = 0;
    if (i1 < arrayOfkc.length) {}
    for (;;)
    {
      if (i3 == 0)
      {
        d += arrayOfkc[i1].a().g();
        i1++;
        if (i2 == 0)
        {
          if (i2 == 0) {
            break;
          }
          if (i3 != 0) {
            continue;
          }
          d += 10 * (arrayOfkc.length - 1);
        }
      }
    }
    return d;
  }
  
  private kc[] e(d paramd)
  {
    k localk = this.e.c(oc.a);
    if (f.o == 0) {
      if (localk == null) {
        return null;
      }
    }
    return (kc[])localk.get(paramd);
  }
  
  boolean a(e parame)
  {
    return (f.o != 0) || (this.h != null) ? this.h.getBool(parame) : false;
  }
  
  boolean b(e parame)
  {
    return (f.o != 0) || ((this.i != null) && (this.i.get(parame) != null));
  }
  
  c_ d(e parame)
  {
    return (f.o != 0) || (this.i != null) ? (c_)this.i.get(parame) : null;
  }
  
  private a_ f(d paramd)
  {
    a_ locala_ = (a_)this.k.get(paramd);
    if (f.o == 0) {
      if (locala_ == null)
      {
        locala_ = new a_();
        this.k.put(paramd, locala_);
      }
    }
    return locala_;
  }
  
  public void c(z paramz)
  {
    int i2 = f.o;
    int i1 = f.n;
    if (i2 == 0) {
      if (!a()) {
        return;
      }
    }
    this.k = new HashMap();
    a.f.l.v localv1 = new a.f.l.v(0.0D, 0.0D);
    a.f.l.v localv2 = new a.f.l.v(0.0D, 0.0D);
    a.c.v localv = paramz.f();
    label137:
    label348:
    label360:
    label758:
    label765:
    do
    {
      if (localv == null) {
        break;
      }
      x.c_ localc_ = (x.c_)localv.c();
      bb localbb = localc_.a;
      localv1.a(localc_.b - 100000.0D, localc_.b - 90000.0D, (byte)1);
      localv2.a(localc_.d + 90000.0D, localc_.d + 100000.0D, (byte)1);
      HashMap localHashMap = new HashMap();
      Object localObject1 = localbb.f();
      Object localObject2;
      Object localObject3;
      do
      {
        do
        {
          if (localObject1 == null) {
            break label348;
          }
          localObject2 = (e)((a.c.v)localObject1).c();
          localObject3 = d((e)localObject2);
          if (i2 != 0) {
            break label137;
          }
          if (i1 != 0) {
            break;
          }
          if (localObject3 != null)
          {
            ((c_)localObject3).a(this.e.d(localObject2));
            c((e)localObject2, ((c_)localObject3).a(1), localHashMap);
            c((e)localObject2, ((c_)localObject3).b(1), localHashMap);
            c((e)localObject2, ((c_)localObject3).a(3), localHashMap);
            c((e)localObject2, ((c_)localObject3).b(3), localHashMap);
            a((e)localObject2, ((c_)localObject3).a(0), localHashMap);
            a((e)localObject2, ((c_)localObject3).c(0), localHashMap);
            a((e)localObject2, ((c_)localObject3).b(0), localHashMap);
            a((e)localObject2, ((c_)localObject3).a(2), localHashMap);
            a((e)localObject2, ((c_)localObject3).c(2), localHashMap);
            a((e)localObject2, ((c_)localObject3).b(2), localHashMap);
          }
          localObject1 = ((a.c.v)localObject1).a();
        } while (i1 == 0);
      } while (i2 != 0);
      localObject1 = localbb.f();
      if (localObject1 != null) {}
      do
      {
        localObject2 = (e)((a.c.v)localObject1).c();
        localObject3 = d((e)localObject2);
        if (i1 != 0) {
          break;
        }
        if (localObject3 != null)
        {
          zc localzc = this.e.d(localObject2);
          a((e)localObject2, ((c_)localObject3).a(1), localHashMap, localv1);
          a((e)localObject2, ((c_)localObject3).b(1), localHashMap, localv2);
          a((e)localObject2, ((c_)localObject3).a(3), localHashMap, localv2);
          a((e)localObject2, ((c_)localObject3).b(3), localHashMap, localv1);
          a((e)localObject2, (c_)localObject3, ((c_)localObject3).a(0), localHashMap, localv1, localv2, (byte)2, 3, localzc);
          a((e)localObject2, (c_)localObject3, ((c_)localObject3).c(0), localHashMap, localv1, localv2, (byte)2, 1, localzc);
          a((e)localObject2, (c_)localObject3, ((c_)localObject3).b(0), localHashMap, localv1, localv2, (byte)2, 1, localzc);
          a((e)localObject2, (c_)localObject3, ((c_)localObject3).a(2), localHashMap, localv2, localv1, (byte)1, 1, localzc);
          a((e)localObject2, (c_)localObject3, ((c_)localObject3).c(2), localHashMap, localv2, localv1, (byte)1, 1, localzc);
          a((e)localObject2, (c_)localObject3, ((c_)localObject3).b(2), localHashMap, localv2, localv1, (byte)1, 3, localzc);
        }
        localObject1 = ((a.c.v)localObject1).a();
        if (i1 == 0) {
          break label360;
        }
        localv1.b();
        localv2.b();
      } while (i2 != 0);
      if (i2 == 0)
      {
        if (localv1.d() > 0) {
          localc_.e = (this.n * localv1.d());
        }
        if (i2 != 0) {}
      }
      else if (localv2.d() > 0)
      {
        localc_.f = (this.n * localv2.d());
      }
      localObject1 = localv1.a();
      do
      {
        do
        {
          if (!((Iterator)localObject1).hasNext()) {
            break;
          }
          localObject2 = (d)((Iterator)localObject1).next();
          localObject3 = (a_)this.k.get(localObject2);
          ((a_)localObject3).a[0] = localv1.d(localObject2);
          if (i2 != 0) {
            break label765;
          }
          if (i1 != 0) {
            break label758;
          }
        } while (i1 == 0);
      } while (i2 != 0);
      localObject1 = localv2.a();
      if (((Iterator)localObject1).hasNext()) {}
      while (i2 != 0)
      {
        localObject2 = (d)((Iterator)localObject1).next();
        localObject3 = (a_)this.k.get(localObject2);
        ((a_)localObject3).a[1] = localv2.d(localObject2);
        if (i2 != 0) {
          break label838;
        }
        if (i1 != 0) {
          break label836;
        }
        if (i1 == 0) {
          break;
        }
      }
      localv = localv.a();
    } while (i1 == 0);
    label836:
    label838:
    return;
  }
  
  private void a(e parame, x.e_ parame_, Map paramMap)
  {
    int i2 = f.o;
    int i1 = f.n;
    a.c.v localv = parame_.l.f();
    do
    {
      if (localv == null) {
        break;
      }
      d locald = (d)localv.c();
      a_ locala_ = f(locald);
      if ((i2 != 0) || (parame != locald.f())) {
        paramMap.put(locald, this.e.r(locald));
      }
      localv = localv.a();
    } while (i1 == 0);
  }
  
  private void c(e parame, x.e_ parame_, Map paramMap)
  {
    int i2 = f.o;
    int i1 = f.n;
    a.c.v localv = parame_.l.f();
    label126:
    do
    {
      if (localv == null) {
        break;
      }
      d locald = (d)localv.c();
      a_ locala_ = f(locald);
      if (i2 == 0)
      {
        if (parame == locald.f()) {
          locala_.c = parame_.b();
        }
      }
      else
      {
        if (i2 != 0) {
          continue;
        }
        if (i1 == 0) {
          break label126;
        }
      }
      double d = parame_.g(0.0D, locala_.b = parame_.b());
      a.d.w localw = this.e.r(locald);
      paramMap.put(locald, new a.d.w(d, localw.b));
      localv = localv.a();
    } while (i1 == 0);
  }
  
  private void a(e parame, x.e_ parame_, Map paramMap, a.f.l.v paramv)
  {
    int i2 = f.o;
    int i1 = f.n;
    a.c.v localv = parame_.l.f();
    do
    {
      if (localv == null) {
        break;
      }
      d locald = (d)localv.c();
      if ((i2 != 0) || (parame != locald.e()))
      {
        a_ locala_ = (a_)this.k.get(locald);
        a.d.w localw1 = this.e.s(locald);
        a.d.w localw2 = (a.d.w)paramMap.get(locald);
        cd localcd = a(locald);
        zc localzc = this.e.d(locald.f());
        a.d.w localw3 = new a.d.w(parame_.g(0.0D, locala_.c), localzc.b());
        paramv.a(locald, localw2, localw3);
      }
      localv = localv.a();
    } while (i1 == 0);
  }
  
  private void a(e parame, c_ paramc_, x.e_ parame_, Map paramMap, a.f.l.v paramv1, a.f.l.v paramv2, byte paramByte, int paramInt, zc paramzc)
  {
    int i2 = f.o;
    int i1 = f.n;
    a.c.v localv = parame_.l.f();
    do
    {
      if (localv == null) {
        break;
      }
      d locald = (d)localv.c();
      if ((i2 != 0) || (parame != locald.e()))
      {
        a_ locala_ = (a_)this.k.get(locald);
        a.d.w localw1 = this.e.s(locald);
        a.d.w localw2 = (a.d.w)paramMap.get(locald);
        cd localcd = a(locald);
        if (localcd.b() == paramByte)
        {
          a.d.w localw3 = new a.d.w(paramc_.c(paramInt).g(0.0D, paramc_.h(paramInt)), paramzc.b());
          locala_.d = (localw3.a - paramzc.a());
          locala_.c = parame_.b();
          paramv2.a(locald, localw2, localw3);
          if (i2 != 0) {
            continue;
          }
          if (i1 == 0) {}
        }
        else
        {
          paramv1.a(locald, localw2, localw1);
        }
      }
      localv = localv.a();
    } while (i1 == 0);
  }
  
  private z g(d paramd)
  {
    z localz = (z)this.a.get(paramd);
    if (f.o == 0) {
      if (localz == null)
      {
        localz = new z();
        this.a.put(paramd, localz);
      }
    }
    return localz;
  }
  
  void d(z paramz)
  {
    int i3 = f.o;
    int i2 = f.n;
    if (!a()) {
      return;
    }
    a.f.l.v localv = new a.f.l.v(0.0D, 0.0D);
    int i1 = 0;
    a.c.v localv1 = paramz.f();
    if (localv1 != null) {}
    label92:
    label94:
    label104:
    label760:
    while (i3 != 0)
    {
      x.c_ localc_ = (x.c_)localv1.c();
      bb localbb = localc_.a;
      double d1 = localc_.b - localc_.e;
      double d2 = localc_.d + this.n;
      this.a.clear();
      do
      {
        if (i2 != 0) {
          return;
        }
        Object localObject1 = localbb.f();
        if (localObject1 != null) {}
        Object localObject2;
        Object localObject3;
        while (i3 != 0)
        {
          localObject2 = (e)((a.c.v)localObject1).c();
          localObject3 = d((e)localObject2);
          if (i3 != 0) {
            break label92;
          }
          if (i2 != 0) {
            break;
          }
          if (localObject3 != null)
          {
            ((c_)localObject3).a(this.e.d(localObject2));
            a((e)localObject2, ((c_)localObject3).a(1), d1, 0);
            a((e)localObject2, ((c_)localObject3).b(1), d2, 1);
            a((e)localObject2, ((c_)localObject3).a(3), d2, 1);
            a((e)localObject2, ((c_)localObject3).b(3), d1, 0);
            a((e)localObject2, ((c_)localObject3).a(0), (byte)2, d1, 0);
            a((e)localObject2, ((c_)localObject3).c(0), (byte)2, d1, 0);
            a((e)localObject2, ((c_)localObject3).b(0), (byte)2, d1, 0);
            a((e)localObject2, ((c_)localObject3).a(2), (byte)1, d2, 1);
            a((e)localObject2, ((c_)localObject3).c(2), (byte)1, d2, 1);
            a((e)localObject2, ((c_)localObject3).b(2), (byte)1, d2, 1);
          }
          localObject1 = ((a.c.v)localObject1).a();
          if (i2 == 0) {
            break label104;
          }
        }
        localObject1 = this.a.entrySet().iterator();
        break label405;
        if (((Iterator)localObject1).hasNext()) {}
        while (i3 != 0)
        {
          localObject2 = (Map.Entry)((Iterator)localObject1).next();
          localObject3 = this.e.e(((Map.Entry)localObject2).getKey());
          ((zb)localObject3).b();
          a.c.v localv2 = ((z)((Map.Entry)localObject2).getValue()).f();
          if (localv2 == null) {
            break label345;
          }
          a.d.w localw1 = (a.d.w)localv2.c();
          ((zb)localObject3).a(localw1.a, localw1.b);
          if (i3 != 0) {
            break label484;
          }
          localv2 = localv2.a();
          if (i3 != 0) {
            break label94;
          }
          if (i2 == 0)
          {
            if ((i3 == 0) && (i2 != 0)) {
              break;
            }
            if (i2 == 0) {
              break label344;
            }
          }
        }
        localObject1 = localbb.f();
        do
        {
          if (localObject1 == null) {
            break label867;
          }
          localObject2 = (e)((a.c.v)localObject1).c();
          localObject3 = d((e)localObject2);
          if (i2 != 0) {
            break;
          }
          if ((localObject3 != null) && (localObject3.h[1] != null))
          {
            double d3 = this.e.p(localObject3.h[1]) + this.n;
            double d4 = this.e.s(localObject3.h[1]) - 2.0D * this.n;
            localv.a(d3, d3 + d4, (byte)0);
            a.c.v localv3 = ((c_)localObject3).c(3).l.f();
            d locald;
            a.d.w localw2;
            a.d.w localw3;
            do
            {
              do
              {
                if (localv3 == null) {
                  break;
                }
                locald = (d)localv3.c();
                localw2 = this.e.r(locald);
                localw3 = this.e.s(locald);
                if (i2 != 0) {
                  break label760;
                }
                if (localw2.b() != localw3.b()) {
                  localv.a(locald, localw2, localw3);
                }
                localv3 = localv3.a();
              } while (i2 == 0);
              localv.b();
            } while (i3 != 0);
            localv3 = ((c_)localObject3).c(3).l.f();
            if (localv3 != null) {}
            do
            {
              locald = (d)localv3.c();
              localw2 = this.e.r(locald);
              localw3 = this.e.s(locald);
              if (i3 != 0) {
                break label651;
              }
              if (i2 != 0) {
                break;
              }
              if (localw2.b() != localw3.b())
              {
                double d5 = localv.c(locald);
                this.e.e(locald).a(d5, localw2.b());
                this.e.e(locald).a(d5, localw3.b());
              }
              localv3 = localv3.a();
              if (i2 == 0) {
                break label702;
              }
              this.e.a(localObject3.h[1]);
            } while (i3 != 0);
            localbb.h(((a.c.v)localObject1).b());
          }
          localObject1 = ((a.c.v)localObject1).a();
        } while (i2 == 0);
        localv1 = localv1.a();
      } while (i3 != 0);
      if (i2 == 0) {
        break;
      }
    }
    label344:
    label345:
    label484:
    this.a.clear();
    label405:
    label702:
    label867:
    return;
  }
  
  private void a(e parame, x.e_ parame_, byte paramByte, double paramDouble, int paramInt)
  {
    int i2 = f.o;
    int i1 = f.n;
    a.c.v localv = parame_.l.f();
    do
    {
      if (localv == null) {
        break;
      }
      d locald = (d)localv.c();
      a_ locala_ = (a_)this.k.get(locald);
      z localz = g(locald);
      double d1 = paramDouble + locala_.a[paramInt] * this.n;
      a.d.w localw;
      double d2;
      if (locald.e() == parame)
      {
        localw = this.e.r(locald);
        if (i2 == 0)
        {
          if (!Double.isNaN(locala_.d))
          {
            d2 = this.e.d(locald.f()).a() + locala_.d;
            localz.a(new a.d.w(d2, d1));
          }
          localz.a(new a.d.w(localw.a, d1));
        }
        if (i2 != 0) {
          continue;
        }
        if (i1 == 0) {}
      }
      else
      {
        localw = this.e.s(locald);
        if (i2 == 0) {
          if (!Double.isNaN(locala_.d))
          {
            d2 = this.e.d(locald.f()).a() + locala_.d;
            d1 = parame_.f(0.0D, locala_.c);
            localz.add(new a.d.w(d2, d1));
          }
        }
        localz.add(new a.d.w(localw.a, d1));
      }
      localv = localv.a();
    } while (i1 == 0);
  }
  
  private void a(e parame, x.e_ parame_, double paramDouble, int paramInt)
  {
    int i2 = f.o;
    int i1 = f.n;
    a.c.v localv = parame_.l.f();
    do
    {
      if (localv == null) {
        break;
      }
      d locald = (d)localv.c();
      a_ locala_ = (a_)this.k.get(locald);
      z localz = g(locald);
      double d1 = paramDouble + locala_.a[paramInt] * this.n;
      double d2;
      a.d.w localw;
      if (locald.e() == parame)
      {
        d2 = parame_.g(0.0D, locala_.b);
        localw = this.e.r(locald);
        localz.a(new a.d.w(d2, d1));
        localz.a(new a.d.w(d2, localw.b));
        if (i2 != 0) {
          continue;
        }
        if (i1 == 0) {}
      }
      else
      {
        d2 = parame_.g(0.0D, locala_.c);
        localw = this.e.s(locald);
        localz.b(new a.d.w(d2, d1));
        localz.b(new a.d.w(d2, localw.b));
      }
      localv = localv.a();
    } while (i1 == 0);
  }
  
  void f()
  {
    int i1 = f.o;
    this.l = null;
    this.k = null;
    this.r = null;
    this.q = null;
    this.o = null;
    this.p = null;
    this.v = null;
    this.w = null;
    if (i1 == 0)
    {
      if (this.i != null)
      {
        this.e.a(this.i);
        this.i = null;
      }
      if (i1 != 0) {}
    }
    else
    {
      if (this.h == null) {
        return;
      }
      this.e.a(this.h);
    }
    this.h = null;
  }
  
  public void c(double paramDouble)
  {
    this.u = paramDouble;
  }
  
  static final class a_
  {
    int[] a = new int[2];
    double b;
    double c;
    double d = (0.0D / 0.0D);
  }
  
  class b_
    implements Comparator, l.j_
  {
    private e a;
    private int b;
    private int c;
    private int d;
    private boolean e;
    private boolean f;
    private k g;
    
    b_(k paramk)
    {
      this.g = paramk;
    }
    
    void a(e parame, int paramInt)
    {
      int i = f.o;
      this.a = parame;
      this.d = this.g.getInt(this.a);
      this.b = (paramInt / 3);
      if (i == 0)
      {
        if (paramInt <= 3) {
          break label57;
        }
        if (i != 0) {
          break label54;
        }
      }
      label54:
      label57:
      this.f = (paramInt < 11);
      if (i == 0) {}
      this.c = (this.f ? 2 : 0);
      if (i == 0) {}
      switch (paramInt)
      {
      case 0: 
      case 3: 
      case 5: 
      case 8: 
        if (i == 0)
        {
          this.e = false;
          if (f.n == 0) {
            return;
          }
        }
      case 2: 
      case 6: 
      case 9: 
      case 11: 
        this.e = true;
      }
    }
    
    public int compare(Object paramObject1, Object paramObject2)
    {
      int i6 = f.o;
      int i5 = f.n;
      if (i6 == 0) {
        if (this.e)
        {
          localObject = paramObject2;
          paramObject2 = paramObject1;
          paramObject1 = localObject;
        }
      }
      Object localObject = (d)paramObject1;
      d locald = (d)paramObject2;
      if (i6 == 0) {
        if (((d)localObject).e() == this.a)
        {
          locale1 = ((d)localObject).f();
          localcd1 = t.this.b((d)localObject);
          k = x.a(localcd1.b(), this.c);
          localw1 = t.this.e.q((d)localObject);
          i = 0;
          if (i6 != 0) {
            break label169;
          }
          if (i5 == 0) {
            break label201;
          }
        }
      }
      e locale1 = ((d)localObject).e();
      cd localcd1 = t.this.a((d)localObject);
      int k = x.a(localcd1.b(), this.c);
      a.d.w localw1 = t.this.e.p((d)localObject);
      label169:
      if (i6 == 0)
      {
        if ((this.b ^ k) != 2) {
          break label198;
        }
        if (i6 != 0) {
          break label195;
        }
      }
      label195:
      label198:
      int i = (this.b | k) == 2 ? 1 : 0;
      label201:
      if (i6 == 0) {
        if (locald.e() == this.a)
        {
          locale2 = locald.f();
          localcd2 = t.this.b(locald);
          localw2 = t.this.e.q(locald);
          m = x.a(localcd2.b(), this.c);
          j = 0;
          if (i6 != 0) {
            break label373;
          }
          if (i5 == 0) {
            break label362;
          }
        }
      }
      e locale2 = locald.e();
      cd localcd2 = t.this.a(locald);
      int m = x.a(localcd2.b(), this.c);
      a.d.w localw2 = t.this.e.p(locald);
      if (i6 == 0)
      {
        if ((this.b ^ m) != 2) {
          break label359;
        }
        if (i6 != 0) {
          break label356;
        }
      }
      label356:
      label359:
      int j = (this.b | m) == 2 ? 1 : 0;
      label362:
      label373:
      int n = this.g.getInt(locale1);
      int i1 = this.g.getInt(locale2);
      int i2 = l.a(i1, n);
      if (i6 == 0) {
        if (i2 == 0)
        {
          if (i6 == 0)
          {
            if (j != i)
            {
              if (i6 == 0) {}
              return (i ^ this.e) != 0 ? -1 : 1;
            }
            if (i6 != 0) {
              break label455;
            }
          }
          label455:
          int i3 = n > this.d ? 1 : 0;
          if (i6 == 0) {
            if (i3 != 0)
            {
              if (i6 == 0) {
                if (this.f)
                {
                  i4 = 1;
                  if (i6 != 0) {
                    break label554;
                  }
                  if (i5 == 0) {
                    break label537;
                  }
                }
              }
              i4 = 2;
              if (i6 != 0) {
                break label554;
              }
              if (i5 == 0) {
                break label537;
              }
            }
          }
          if (i6 == 0) {
            if (this.f)
            {
              i4 = 3;
              if (i6 != 0) {
                break label554;
              }
              if (i5 == 0) {
                break label537;
              }
            }
          }
          int i4 = 3;
          label537:
          label554:
          return a(i4, k, m, this.f, localw1, localw2);
        }
      }
      if (i6 == 0) {
        if (j != i)
        {
          if (i6 == 0) {
            if ((i ^ this.e) != 0) {
              return -1;
            }
          }
          return 1;
        }
      }
      if (i6 == 0) {
        if (n < this.d)
        {
          n = this.d - n;
          if (i6 != 0) {
            break label628;
          }
          if (i5 == 0) {
            break label626;
          }
        }
      }
      n = 2147483647 - n;
      label626:
      label628:
      if (i6 == 0) {
        if (i1 < this.d)
        {
          i1 = this.d - i1;
          if (i6 != 0) {
            break label673;
          }
          if (i5 == 0) {
            break label666;
          }
        }
      }
      i1 = 2147483647 - i1;
      label666:
      label673:
      return l.a(n, i1);
    }
    
    private int a(int paramInt1, int paramInt2, int paramInt3, boolean paramBoolean, a.d.w paramw1, a.d.w paramw2)
    {
      int m = f.o;
      int k = f.n;
      int j;
      if (m == 0) {
        if (paramBoolean)
        {
          if (m == 0) {
            if (paramInt2 > paramInt1) {
              paramInt2 -= 4;
            }
          }
          if (m == 0) {
            if (paramInt3 > paramInt1) {
              paramInt3 -= 4;
            }
          }
          i = l.a(paramInt2, paramInt3);
          if (m == 0) {
            if (i == 0)
            {
              if (m == 0) {
                switch (4 + paramInt2 & 0x3)
                {
                case 0: 
                  j = l.a(paramw2.a, paramw1.a);
                  if (m != 0) {
                    break label193;
                  }
                  if (k == 0) {
                    break;
                  }
                case 1: 
                  j = l.a(paramw2.b, paramw1.b);
                  if (m != 0) {
                    break label193;
                  }
                  if (k == 0) {
                    break;
                  }
                case 2: 
                  j = l.a(paramw1.a, paramw2.a);
                  if (m != 0) {
                    break label193;
                  }
                  if (k == 0) {
                    break;
                  }
                }
              } else {
                j = l.a(paramw1.b, paramw2.b);
              }
              label193:
              return -j;
            }
          }
          return i;
        }
      }
      if (m == 0) {
        if (paramInt2 < paramInt1) {
          paramInt2 += 4;
        }
      }
      if (m == 0) {
        if (paramInt3 < paramInt1) {
          paramInt3 += 4;
        }
      }
      int i = l.a(paramInt3, paramInt2);
      if (m == 0) {
        if (i == 0)
        {
          if (m == 0) {
            switch (4 + paramInt2 & 0x3)
            {
            case 0: 
              j = l.a(paramw2.a, paramw1.a);
              if (m != 0) {
                break label368;
              }
              if (k == 0) {
                break;
              }
            case 1: 
              j = l.a(paramw2.b, paramw1.b);
              if (m != 0) {
                break label368;
              }
              if (k == 0) {
                break;
              }
            case 2: 
              j = l.a(paramw1.a, paramw2.a);
              if (m != 0) {
                break label368;
              }
              if (k == 0) {
                break;
              }
            }
          } else {
            j = l.a(paramw1.b, paramw2.b);
          }
          label368:
          return j;
        }
      }
      return i;
    }
  }
  
  static class c_
    extends x.d_
  {
    int[] c = new int[2];
    int[] g = new int[4];
    e[] h = new e[2];
    
    c_(zc paramzc)
    {
      super();
    }
  }
}



/* Location:           E:\idea\

 * Qualified Name:     a.f.d.t

 * JD-Core Version:    0.7.0.1

 */